Efficient Flash Memory Read Request Handling Based on Split Transactions
نویسندگان
چکیده
Flash memory is a storage class memory widely used in mobile computing systems due to its small size, low power consumption, fast access time, and high shock and vibration resistance. Flash memory based storage systems exploit chip-level parallelism and hide the latency of flash memory operations through request scheduling. However, conventional scheduling techniques are inadequate for handling series of small random requests, degrading the overall performance of the system. This paper presents a flash memory request handling technique based on split transactions to improve the read performance – in particular, the performance of multiple small read requests. This technique decouples the first and second phase of each flash memory read request and services them in a different manner. The first phase of the operation is issued at the earliest time possible, while the second phase is delayed until the operation latency expires or the next read request arrives to the same chip. This request handling technique based on split transactions has been incorporated into a prototype flash memory based storage system on an FPGA development board. Experimental results from this prototype show that for small random read requests, this technique improves read performance by up to 46%.
منابع مشابه
LS-LRU: A Lazy-Split LRU Buffer Replacement Policy for Flash-Based B+-tree Index
Most embedded systems are equipped with flash memory owing to its shock resistance, fast access, and low power consumption. However, some of its distinguishing characteristics, including out-of-place updates, an asymmetric read/write/erase speed, and a limited number of write/erase cycles, make it necessary to reconsider the existing system designs to explore its performance potential. For exam...
متن کاملA Transactional Flash File System for Microcontrollers
We present a transactional file system for flash memory devices. The file system is designed for embedded microcontrollers that use an on-chip or on-board NOR flash device as a persistent file store. The file system provides atomicity to arbitrary sequences of file system operations, including reads, writes, file creation and deletion, and so on. The file system supports multiple concurrent tra...
متن کامل-tree Index
Most embedded systems are equipped with flash memory owing to its shock resistance, fast access, and low power consumption. However, some of its distinguishing characteristics, including out-of-place updates, an asymmetric read/write/erase speed, and a limited number of write/erase cycles, make it necessary to reconsider the existing system designs to explore its performance potential. For exam...
متن کاملMICA: A Holistic Approach to Fast In-Memory Key-Value Storage
MICA is a scalable in-memory key-value store that handles 65.6 to 76.9 million key-value operations per second using a single general-purpose multi-core system. MICA is over 4–13.5x faster than current state-of-the-art systems, while providing consistently high throughput over a variety of mixed read and write workloads. MICA takes a holistic approach that encompasses all aspects of request han...
متن کاملAn Efficient Dynamic Hash Index Structure for NAND Flash Memory
We propose an efficient dynamic hash index structure suitable for a NAND flash memory environment. Since write operations incur significant overhead in NAND flash memory, our design of index structure focuses on minimizing the number of write operations for hash index updates. Through a set of extensive experiments, we show the effectiveness of the proposed hash index structure in a NAND flash ...
متن کامل